﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace CSharpParser.SCharpType
{

    public class CsPropertyInfo : System.Reflection.PropertyInfo
    {
        private Microsoft.RestrictedUsage.CSharp.Semantics.CSharpMember item;
        private CSType _type { get; set; }

        public CsPropertyInfo(Microsoft.RestrictedUsage.CSharp.Semantics.CSharpMember item, CSType type)
        {
            // TODO: Complete member initialization
            this.item = item;
            _type = type;

        }

        public CsPropertyInfo(Microsoft.RestrictedUsage.CSharp.Semantics.CSharpMember item)
        {
            // TODO: Complete member initialization
            this.item = item;
        }

        public override System.Reflection.PropertyAttributes Attributes
        {
            get { throw new NotImplementedException(); }
        }

        public override bool CanRead
        {
            get { throw new NotImplementedException(); }
        }

        public override bool CanWrite
        {
            get { throw new NotImplementedException(); }
        }

        public override System.Reflection.MethodInfo[] GetAccessors(bool nonPublic)
        {
            throw new NotImplementedException();
        }

        public override System.Reflection.MethodInfo GetGetMethod(bool nonPublic)
        {
            throw new NotImplementedException();
        }

        public override System.Reflection.ParameterInfo[] GetIndexParameters()
        {
            throw new NotImplementedException();
        }

        public override System.Reflection.MethodInfo GetSetMethod(bool nonPublic)
        {
            throw new NotImplementedException();
        }

        public override object GetValue(object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, object[] index, System.Globalization.CultureInfo culture)
        {
            throw new NotImplementedException();
        }

        public override Type PropertyType
        {
            get { throw new NotImplementedException(); }
        }

        public override void SetValue(object obj, object value, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, object[] index, System.Globalization.CultureInfo culture)
        {
            throw new NotImplementedException();
        }

        public override Type DeclaringType
        {
            get { throw new NotImplementedException(); }
        }

        public override object[] GetCustomAttributes(Type attributeType, bool inherit)
        {
            throw new NotImplementedException();
        }

        public override object[] GetCustomAttributes(bool inherit)
        {
            throw new NotImplementedException();
        }

        public override bool IsDefined(Type attributeType, bool inherit)
        {
            throw new NotImplementedException();
        }

        public override string Name
        {
            get { throw new NotImplementedException(); }
        }

        public override Type ReflectedType
        {
            get { throw new NotImplementedException(); }
        }
    }
}
